package com.xbai.user.service;

import com.github.pagehelper.PageInfo;
import com.xbai.user.pojo.User;

import java.util.List;

/**
 * @desc User业务层接口
 * @author jxbai
 * @date 2021/1/28
 */
public interface UserService {

    /**
     * User条件+分页查询
     * @param user {@link User}
     * @param page 页码
     * @param size 页大小
     * @return {@link PageInfo<User>} 分页结果
     */
    PageInfo<User> findPage(User user, int page, int size);

    /**
     * User分页查询
     * @param page 页码
     * @param size 页大小
     * @return {@link PageInfo<User>}
     */
    PageInfo<User> findPage(int page, int size);

    /**
     * User条件查询
     * @param user {@link User}
     * @return {@link List < User >}
     */
    List<User> findList(User user);

    /**
     * 删除User
     * @param id 主键id
     */
    void delete(String id);

    /**
     * 修改User数据
     * @param user {@link User}
     */
    void update(User user);

    /**
     * 新增User
     * @param user {@link User}
     */
    void add(User user);

    /**
     * 根据ID查询User
     * @param id 主键id
     * @return {@link User}
     */
     User findById(String id);

    /**
     * 查询所有User
     * @return {@link List < User >}
     */
    List<User> findAll();
}
